package com.example.keshe;

/**
 * 表示库存信息的类。
 */
public class Inventory {

    private String inventoryId;      // 库存ID
    private String clothingId;       // 服装ID
    private String purchasePrice;    // 进货价格
    private String purchaseQuantity; // 进货数量
    private String totalAmount;      // 进货总金额
    private String existingStock;    // 现有库存
    private String inventoryDate;    // 进货日期

    /**
     * 构造一个完整填充的 Inventory 对象。
     *
     * @param inventoryId      库存ID
     * @param clothingId       服装ID
     * @param purchasePrice    进货价格
     * @param purchaseQuantity 进货数量
     * @param totalAmount      进货总金额
     * @param existingStock    现有库存
     * @param inventoryDate    进货日期
     */
    public Inventory(String inventoryId, String clothingId, String purchasePrice, String purchaseQuantity, String totalAmount, String existingStock, String inventoryDate) {
        this.inventoryId = inventoryId;
        this.clothingId = clothingId;
        this.purchasePrice = purchasePrice;
        this.purchaseQuantity = purchaseQuantity;
        this.totalAmount = totalAmount;
        this.existingStock = existingStock;
        this.inventoryDate = inventoryDate;
    }

    /**
     * 静态方法，根据提供的参数构建部分填充的 Inventory 对象。
     *
     * @param inventoryId      库存ID
     * @param clothingId       服装ID
     * @param purchasePrice    进货价格
     * @param purchaseQuantity 进货数量
     * @param inventoryDate    进货日期
     * @return 部分填充的 Inventory 对象
     */
    public static Inventory createPartialInventory(String inventoryId, String clothingId, String purchasePrice, String purchaseQuantity, String inventoryDate) {
        return new Inventory(inventoryId, clothingId, purchasePrice, purchaseQuantity, "", "", inventoryDate);
    }

    /**
     * 获取库存ID。
     *
     * @return 库存ID
     */
    public String getInventoryId() { return inventoryId; }

    /**
     * 获取服装ID。
     *
     * @return 服装ID
     */
    public String getClothingId() { return clothingId; }

    /**
     * 获取进货价格。
     *
     * @return 进货价格
     */
    public String getPurchasePrice() { return purchasePrice; }

    /**
     * 获取进货数量。
     *
     * @return 进货数量
     */
    public String getPurchaseQuantity() { return purchaseQuantity; }

    /**
     * 获取进货总金额。
     *
     * @return 进货总金额
     */
    public String getTotalAmount() { return totalAmount; }

    /**
     * 获取现有库存。
     *
     * @return 现有库存
     */
    public String getExistingStock() { return existingStock; }

    /**
     * 获取进货日期。
     *
     * @return 进货日期
     */
    public String getInventoryDate() { return inventoryDate; }

    /**
     * 设置现有库存。
     *
     * @param existingStock 现有库存
     */
    public void setExistingStock(String existingStock) {
        this.existingStock = existingStock;
    }
}
